package cn.tedu.medicalmanagementsystem.escort.pojo.dto;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.*;
import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
public class EscortRegParam {
//    @ApiModelProperty(value = "陪诊员ID（更新时必填）", required = false)
//    private Long id;

    @Pattern(regexp = "^[\\u4e00-\\u9fa5]{2,10}$", message = "真实姓名必须是2~10个汉字")
    @ApiModelProperty(value = "真实姓名", required = true)
    private String realName;

    @Size(min = 6, max = 20, message = "密码长度需在6~20位之间")
    @ApiModelProperty(value = "密码", required = true)
    private String password;

    //@Pattern(regexp = "^(男|女)$", message = "性别只能是‘男’或‘女’")
    @ApiModelProperty(value = "性别（男/女）", required = true)
    private String gender;


    @Min(value = 18, message = "年龄不能小于18岁")
    @Max(value = 100, message = "年龄不能大于100岁")
    @ApiModelProperty(value = "年龄", required = true)
    private Integer age;

    @Pattern(regexp = "^\\d{17}[\\dXx]$", message = "身份证号码格式不正确")
    @ApiModelProperty(value = "身份证号", required = true)
    private String idCard;

    @Pattern(regexp = "^1[3-9]\\d{9}$", message = "联系电话格式不正确")
    @ApiModelProperty(value = "联系电话", required = true)
    private String phone;

    @ApiModelProperty(value = "头像URL", required = false)
    private String avatar;

    @ApiModelProperty(value = "资质证书URL", required = false)
    private String certificate;

//    @ApiModelProperty(value = "服务次数", required = false)
//    private Integer serviceCount;

//    @DecimalMin("0.0")
//    @DecimalMax("5.0")
//    @ApiModelProperty(value = "平均评分", required = false)
//    private BigDecimal avgRating;

    @ApiModelProperty(value = "个人简介", required = false)
    private String profile;

//    @Pattern(regexp = "^(待审核|已通过|已拒绝)$", message = "审核状态只能是：待审核、已通过、已拒绝")
//    @ApiModelProperty(value = "审核状态", required = true)
//    private String status;
//
//    @ApiModelProperty(value = "审核意见", required = false)
//    private String auditComment;

//    @ApiModelProperty(value = "创建时间", required = false)
//    private LocalDateTime createTime;
}
